#include <MapKit/MKVertex.h>

MKVertex::MKVertex()
{
}

MKVertex::~MKVertex()
{
}

MKVertex* MKVertex::Create()
{
    return new MKVertex;
}

void MKVertex::Destroy()
{
    delete this;
}

bool MKVertex::operator==(const MKVertex& vt) const
{
    return x == vt.x && y == vt.y;
}

bool MKVertex::operator==(const MKVertex* vt) const
{
    return x == vt->x && y == vt->y;
}

bool MKVertex::operator!=(const MKVertex& vt) const
{
    return !(*this == vt);
}

bool MKVertex::operator<(const MKVertex& vt) const
{
    if (x != vt.x)
        return x < vt.x;
    else
        return y < vt.y;
}

bool MKVertex::operator<=(const MKVertex& vt) const
{
    return !(*this > vt);
}

bool MKVertex::operator>(const MKVertex& vt) const
{
    if (x != vt.x)
        return x > vt.x;
    else
        return y > vt.y;
}

bool MKVertex::operator>=(const MKVertex& vt) const
{
    return !(*this < vt);
}